const path = require('path');
const htmlWebpackPlugin = require("html-webpack-plugin");
module.exports = {
    //context:"", //运行环境的上下文，一般默认为根目录下
    entry: {
        "main.bunble": "./src/main.js",
        "test.bunble": "./src/js/test.js",
        "a.bunble" : "./src/js/a.js",
        "b.bunble" : "./src/js/b.js",
        "c.bunble" : "./src/js/c.js"
    },
    output: {
        path: path.resolve(__dirname, "public"),
        filename: 'js/[name].[chunkhash].js',
        publicPath: "https://cdn.com"            //一般用作打包上线后的文件地址
    },
    module: {
        rules: [
            // {
            //     test:'/\.css$/'
            // }
        ]
    },
    plugins: [       //使用插件
        new htmlWebpackPlugin({         //成成打包过后的Html文件，并且自动把js加入进去
            filename:"a.[hash].html",       //也可以设置文件名
            template: 'index.html',           //以Index.html为模板
            inject: "head",           //将打包的文件嵌入到head标签内   是否注入
            title: "webapack is so a",    //可以当做参数传给页面并进行使用渲染
            date: new Date(),             //同样可与传这个过去
            some: "oooooooo",
           //chunks:["main.bunble","test.bunble","a.bunble"],    //注入进去哪几个js文件,从entry里面排除
            excludeChunks:["b.bundle","c.bundle"],              //注入的时候排除这几个文件
            // minify: {
            //     removeComments: true,        //去掉注释
            //     collapseWhitespace: true     //去除空格
            // }
        }),
        new htmlWebpackPlugin({         //成成打包过后的Html文件，并且自动把js加入进去
            filename:"b.[hash].html",       //也可以设置文件名
            template: 'index.html',           //以Index.html为模板
            inject: "head",           //将打包的文件嵌入到head标签内   是否注入
            title: "webapack is so b",    //可以当做参数传给页面并进行使用渲染
            chunks:["b.bunble"]
        }),
        new htmlWebpackPlugin({         //成成打包过后的Html文件，并且自动把js加入进去
            filename:"c.[hash].html",       //也可以设置文件名
            template: 'index.html',           //以Index.html为模板
            inject: "head",           //将打包的文件嵌入到head标签内   是否注入
            title: "webapack is so c",    //可以当做参数传给页面并进行使用渲染
            chunks:["c.bunble"]
        })
    ]
}